/*
 * GLGoodsProperty.h
 *
 *  Created on: Dec 10, 2014
 *      Author: yuliang
 */

#ifndef GLGOODSPROPERTY_H_
#define GLGOODSPROPERTY_H_

#include "LogicBase/GLGoodsBase.h"

class CGLGoodsProperty: public CGLGoodsBase {
public:
	typedef std::map<PropertyType, int32_t> MapProperty_t;
	typedef std::map<PropertyModel, int32_t> MapPropPoint_t;
public:
	CGLGoodsProperty();
	virtual ~CGLGoodsProperty();
	virtual inline void ResetProperty() { m_ChangeProp.clear(); m_ChangePoint.clear(); }
	inline MapProperty_t& GetChangeProp() { return m_ChangeProp; }
	inline MapPropPoint_t& GetChangePoint() { return m_ChangePoint; }

	bool DecodeExtend(const std::string& info);
	bool EncodeExtend(std::string& info);
private:
	MapProperty_t		m_ChangeProp;
	MapPropPoint_t		m_ChangePoint;
};

#endif /* GLGOODSPROPERTY_H_ */
